package com.vhall.component.entity.exam.vo;

import com.vhall.component.framework.common.annotation.ParamName;
import lombok.Data;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * 试卷创建
 *
 * @author yongzheng.xu
 * @date 2021/7/5 15:00
 */
@Data
public class ExamPaperCreateReqVo implements Serializable {

    /**
     * 试卷编号
     */
    @NotNull(message = "exam_id参数错误")
    @ParamName("exam_id")
    private Integer examId;

    /**
     * 试卷标题
     */
    @NotBlank(message = "title参数错误")
    @ParamName("title")
    private String title;

    /**
     * 试卷描述
     */
    @ParamName("desc")
    private String desc;

    /**
     * 业务扩展
     */
    @ParamName("extend")
    private String extend;

    /**
     * 试卷总分数
     */
    @NotNull(message = "score参数错误")
    @ParamName("score")
    private Integer score;

    /**
     * 问题数量
     */
    @NotNull(message = "question_num参数错误")
    @ParamName("question_num")
    @Min(1)
    private Integer questionNum;

    /**
     * 类型, 0=试卷,1=考试, 当为考试的时候,limit_time必传
     */
    @NotNull
    private Integer type = 0;

    /**
     * 考试时间
     */
    @NotNull
    @ParamName("limit_time")
    private Integer limitTime = 0;

    /**
     * 是否是公开考卷，1是0否
     */
    @ParamName("is_public")
    private Integer isPublic = 0;


    @ParamName("source_id")
    private String sourceId = "";

}
